©作者 | 青青韶华
学校 | 中科院自动化所博士生
研究方向 | 计算机视觉
本文介绍的是来自意大利、法国和德国的研究人员共同提出的用于新类别发现(Novel Class Discovery, NCD)的新方法——Unified Objective (UNO),通过一个统一的交叉熵函数实现了对无标签的新类别图像的分类能力,打破了以往工作中需要添加聚类目标和辅助目标的学习范式。
论文标题:
A Unified Objective for Novel Class Discovery
论文地址:
https://arxiv.org/abs/2108.08536
论文来源:
ICCV 2021 Oral
项目地址:
https://ncd-uno.github.io
简介
经典的图像分类任务根据图像是否具有类别标签主要分为三大类,一是所有图像都具有类别标签的完全有监督学习;二是所有图像都没有类别标签的完全无监督学习,通常可采用自监督学习或者聚类的方法;三是部分图像具有标签的半监督学习,在这种设定下,有标签和无标签图像的类别是共享的。
然而,在实际中,真实的情况是少量图像是带有标签,而大量图像是没有标注的,并且这些无标签图像的类别与有标签图像的类别是不重叠的。为了解决这种问题,新类别发现(Novel Class Discovery,NCD)任务应运而生。该任务旨在训练一个同时对类别不重叠的有标签和无标签图像的分类的模型。
现有方法通常采用两步走的策略,首先通过度量学习机制在有标签图像上做预训练,之后采用基于聚类的方法在无标签图像上微调。这类方法往往需要依靠聚类损失和基于数据变换的一致性损失等多种损失来驱动模型的训练。
本文另辟蹊径,认为只要能够给无标签数据打上高质量的伪标签,那么就可以采用统一的交叉熵损失来监督训练,由此提出 UNO 框架,其与以往方法的不同之处如下图所示。
NCD任务描述
在 NCD 任务中,训练数据分为两类。一类是有标签数据 ,另一类是无标签数据 ,其中 中的 和 中的 是图像,而 是有标签图像的类别标签。NCD 任务的目标是在 的基础上,对 划分 个聚类簇,从而实现对 的分类。这里 和 是不重叠的类别标签,它们共同构成了完整的类别标签集 。
上图展示了 UNO 方法的整体框架图,其中绿色的部分表示有标签图像集 ,蓝色的部分表示无标签图像集 。整个模型包括上下两个权重共享的分支,每个分支的输入是一组由有标签和无标签图像组成的 batch,以及这组 batch 经过数据变换后对应的图像。每个分支的结构由一个编码器 和两个头组成,分别是有标签头 和无标签头 。 对于有标签图像,直接采用 GT 作为监督信号;对于无标签图像,作者通过其中一个无标签 head( )为另一个有标签 head( )的无标签图像提供伪标签。这样对于有标签 head 可以直接采用一个统一的交叉熵损失来进行监督学习,这也是本文的核心观点所在,公式如下
其中, , 是有标签图像的 GT 或者无标签图像的伪标签,而 是网络的预测输出。 有两点值得特别注意:
在进行交叉熵损失之前,是将有标签 head 的全连接输出 与无标签 head 的全连接输出 通过 concat 后(即 )再经过 softmax 得到预测输出 。 在给无标签数据打伪标签时,作者不是采用以往让两个分支对无标签图像的输出保持一致性,而是用其中一个分支为另一个分支打伪标签。 下面详细介绍在整个框架中的重点技术细节。 图像经过不同变换得到的结果可以看做是观察图像的不同视角,利用不同视角图像在分类结果上的一致性是很多自监督学习采用的经典方式。 本文的两个分支的输入就是对同一组图像采用了不同的数据变换方式。 具体地,对于简单的数据变换(记为 weak)包括适度的随机裁剪和翻转; 对于较强的数据变换(记为 strong)包括适度的随机裁剪、翻转、抖动和灰度变换。 伪标签生成的一种简单方式是直接采用无标签 head( )的全连接输出,经过 softmax 后作为有标签 head( )的分类标签。 然后,这种伪标签分配的方式会导致 对所有的输入输出相同的 logits 向量,从而造成模型退化而无法学习。 为此,作者对这种 logits 输出相同的情况添加了一个熵项作为惩罚,使其在 个聚类上均匀分布。 具体地,先将无标签 head 输出的 logits 组成一个矩阵 ,其中 B 是 batch 的大小。 我们的目标是得到一个包含每个样本伪标签的矩阵 ,那么 可以通过下式解出:
其中 是超参数, 是用来分散伪标签的熵函数, 是矩阵的迹, 是运输多面体( transportation polytope),定义如下:
这里 的求解采用的是 Sinkhorn-Knopp 算法 [1] ,这种约束能够保证每个簇在训练批次中平均被选择 次,其中 是一个批次中无标签图像的数量。 3.3 多头聚类和过度聚类 根据牛津大学提出的 IIC 方法 [2] ,作者还采用了过度聚类(Overclustering)方法进一步增强性能。即在编码器 后面多接一个过度聚类头 ,其聚类神经元输出扩增为 。进一步地,作者还采用了多头聚类,即采用多个 ( )以及多个 ( )。 具体地,对每个 ,将 与 做 concat,再经过 层 softmax 函数后做交叉熵损失。对于每个 ,将 与 做 concat,再经过 层 softmax 函数后做交叉熵损失。这样可以进一步得到更细粒度的无标签数据分类。 实验
4.1 数据集划分
作者在 CIFAR10,CIFAR100 和 ImageNet 上进行了实验,按照以往工作中对数据集有标签和无标签数据的划分方式如下表:
考虑到真实场景中,无标签数据的数量应当是很多的。因此作者还新增加了 CIFAR100-50 这种更具有挑战性的数据集划分方式,来验证 UNO 方法的有效性。 4.2 消融分析 作者主要验证了三个关键策略对 UNO 方法的影响,分别是
作者分别进行了两种形式的验证,一是任务相关的(task-aware),即和以往工作中类似,对有标签图像采用有标签 head 评估,对无标签图像采用无标签 head 评估;二是任务无关的(task-agnostic),即事先不区分有标签和无标签数据。
从上表可以看出,三种策略在两个数据集上都分别有提升。任务无关的性能要大大低于任务相关的结果,这也表明在实际场景中不事先区分有标签和无标签数据仍然存在较大的挑战。 4.3 与SOTA的比较 作者分别在三个数据集上与 SOTA 方法进行了任务相关评估方式的比较。
可见 UNO 方法相比 SOTA 方法在 CIFAR100 上有超过 10% 的提升,在 ImageNet 上也有超过 8% 的提升。这表明这种统一目标的方法具有很大的提升,打破了以往两步走的经典新类别学习方式。
作者也在 CIFAR10 和 CIFAR100 上进行了任务无关评估方式的比较。UNO 方法在有标签测试集和无标签聚类任务上都有明显的提升。 4.4 可视化结果
作者还对特征空间进行了 t-SNE 可视化分析,可以看出 RS+ 中不同类之间的分布存在重叠区域,而 UNO 中无论是共享特征空间还是 concat 的 logits 空间中,每个类别都是均匀分布的。并且有标签数据和无标签数据都能很好的分散开来,这证明了 UNO 方法分类的鲁棒性。
小结
本文打破了以往基于自监督预训练或者多种损失函数辅助的新类别发现学习方式,基于构造伪标签的方式,通过一个统一的交叉熵函数实现了 SOTA 的性能。UNO 开创了一种新的 NCD 任务学习范式,为未来进一步的研究工作提供了新的基准和参考。 [1] Marco Cuturi. Sinkhorn distances: lightspeed computation of optimal transport. In NeurIPS 2013.
[2] Xu Ji, Joao F Henriques, and Andrea Vedaldi. Invariant information clustering for unsupervised image classification and segmentation. In CVPR 2019.
#投 稿 通 道 #
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读 ,也可以是学术热点剖析 、科研心得 或竞赛经验讲解 等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品 ,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬 ,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱: hr@paperweekly.site
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02 )快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」 也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」 订阅我们的专栏吧